package edison.persistence;

public interface SecurityService {

	boolean hasPermission(String userID, String absPath, String actions) throws PersistenceException;

	String[] getSupportedPrivilegesByPath(String absPath) throws PersistenceException;

	String[] getPrivilegesByPath(String userID, String absPath) throws PersistenceException;

	boolean hasPrivileges(String userID, String absPath, String[] privilegeNames) throws PersistenceException;

	String[] getNamedAccessControlPolicies(String userID, String absPath) throws PersistenceException;

	String[] getAccessControlList(String userID, String absPath) throws PersistenceException;

}
